package com.xyl.springboot.msg;

import lombok.extern.slf4j.Slf4j;
import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.stereotype.Component;

/**
 * 消息接收
 * https://docs.spring.io/spring-kafka/reference/kafka/receiving-messages/message-listener-container.html
 * 方式1.配置MessageListenerContainer并提供消息侦听器,必须提供一个侦听器来接收数据。目前，消息侦听器支持八个接口
 * 提供2个消息监听容器实现:
 * KafkaMessageListenerContainer在单个线程上接收来自所有主题或分区的所有消息
 * ConcurrentMessageListenerContainer委托给一个或多个KafkaMessageListenerContainer实例提供多线程消费。
 * <p>
 * 方式2.使用@KafkaListener注释来接收消息
 */
@Slf4j
@Component
public class ReceivingMessage {

    @KafkaListener(id = "foo", topics = "db", clientIdPrefix = "db-client-Id")
    public void listen(String data) {
        log.info(data);
    }

}